home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
IRIX Base Documentation 1998 November
/
IRIX 6.5.2 Base Documentation November 1998.img
/
usr
/
share
/
catman
/
p_man
/
cat3
/
aio_suspend.z
/
aio_suspend
Wrap
Text File
|
1998-10-20
|
6KB
|
133 lines
AAAAIIIIOOOO____SSSSUUUUSSSSPPPPEEEENNNNDDDD((((3333)))) AAAAIIIIOOOO____SSSSUUUUSSSSPPPPEEEENNNNDDDD((((3333))))
NNNNAAAAMMMMEEEE
aio_suspend, aio_suspend64 - wait for an asynchronous I/O request
CCCC SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
####iiiinnnncccclllluuuuddddeeee <<<<aaaaiiiioooo....hhhh>>>>
iiiinnnntttt aaaaiiiioooo____ssssuuuussssppppeeeennnndddd((((ccccoooonnnnsssstttt aaaaiiiiooooccccbbbb____tttt **** ccccoooonnnnsssstttt aaaaiiiiooooccccbbbbpppp[[[[]]]],,,, iiiinnnntttt ccccnnnntttt,,,, ccccoooonnnnsssstttt ttttiiiimmmmeeeessssppppeeeecccc____tttt ****ttttiiiimmmmeeeeoooouuuutttt))));;;;
iiiinnnntttt aaaaiiiioooo____ssssuuuussssppppeeeennnndddd66664444((((ccccoooonnnnsssstttt aaaaiiiiooooccccbbbb66664444____tttt **** ccccoooonnnnsssstttt aaaaiiiiooooccccbbbbpppp[[[[]]]],,,, iiiinnnntttt ccccnnnntttt,,,, ccccoooonnnnsssstttt ttttiiiimmmmeeeessssppppeeeecccc____tttt ****ttttiiiimmmmeeeeoooouuuutttt))));;;;
DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
The _a_i_o__s_u_s_p_e_n_d() function shall suspend the calling thread until at
least one of the asynchronous I/O operations referenced by the _a_i_o_c_b_p
argument has completed, until a signal interrupts the function, or if
_t_i_m_e_o_u_t is not NULL, until the time interval specified by _t_i_m_e_o_u_t has
passed. If any of the _a_i_o_c_b structures in the list correspond to the
completed asynchronous I/O operations(i.e., the error status for the
operation is not equal to EINPROGRESS, at the time of the call), the
function shall return without suspending the calling thread. The _a_i_o_c_b_p
argument points to an array of pointers to asynchronous I/O control
blocks. The _c_n_t argument indicates the number of elements in the array.
Each _a_i_o_c_b structure pointed to shall have been used in initiating an
asynchronous I/O request via _a_i_o__r_e_a_d(), _a_i_o__w_r_i_t_e(), or _l_i_o__l_i_s_t_i_o().
This array may contain NULL pointers which shall be ignored. If this
array contains pointers that refer to _a_i_o_c_b structures which have not
been used in submitting asynchronous I/O, the effect is undefined.
The _a_i_o__s_u_s_p_e_n_d_6_4() function is identical to _a_i_o__s_u_s_p_e_n_d() except that it
takes an array of _a_i_o_c_b_6_4__t * (see <aaaaiiiioooo....hhhh>). This structure allows for
the specification of a file offset greater than 2 Gigabytes. The user
must define ____AAAABBBBIIII____SSSSOOOOUUUURRRRCCCCEEEE and include ----llllaaaabbbbiiii to access the _a_i_o_6_4 routines.
If the time interval indicated in the _t_i_m_e_s_p_e_c structure pointed to by
_t_i_m_e_o_u_t passes before any of the I/O operations referenced by _a_i_o_c_b_p are
completed, then _a_i_o__s_u_s_p_e_n_d() shall return with an error.
SSSSEEEEEEEE AAAALLLLSSSSOOOO
aio_read(3), aio_write(3), lio_listio(3), aio_sgi_init(3)
DDDDIIIIAAAAGGGGNNNNOOOOSSSSTTTTIIIICCCCSSSS
If the _a_i_o__s_u_s_p_e_n_d() function returns after one or more asynchronous I/O
operations has completed, zero is returned.
The application may determine which asynchronous I/O completed by
scanning the associated error and return status, using _a_i_o__e_r_r_o_r(_3) and
_a_i_o__r_e_t_u_r_n(_3), respectively.
If any of the following conditions occur, the _a_i_o__s_u_s_p_e_n_d() function
shall return -1 and set _e_r_r_n_o to the corresponding value.
PPPPaaaaggggeeee 1111
AAAAIIIIOOOO____SSSSUUUUSSSSPPPPEEEENNNNDDDD((((3333)))) AAAAIIIIOOOO____SSSSUUUUSSSSPPPPEEEENNNNDDDD((((3333))))
[EAGAIN] No asynchronous I/O indicated in the list referenced by
_a_i_o_c_b_p completed in the time interval indicated by
_t_i_m_e_o_u_t.
[EINTR] A signal interrupted the _a_i_o__s_u_s_p_e_n_d() function. Note
that, since each asynchronous I/O operation may possibly
provoke a signal when it completes, this error return may
be caused by the completion of one (or more) of the very
I/O operation being awaited.
[EAGAIN] The system was short of resources and unable to wait for
I/O.
PPPPaaaaggggeeee 2222